Skip to content

user_timestamped_video#8

Open
stephen-derosa wants to merge 1 commit intomainfrom
sderosa/user_timestamp_video
Open

user_timestamped_video#8
stephen-derosa wants to merge 1 commit intomainfrom
sderosa/user_timestamp_video

Conversation

@stephen-derosa
Copy link
Copy Markdown
Contributor

@stephen-derosa stephen-derosa commented Apr 22, 2026

  • requires a release of client-sdk-cpp to build successfully

Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds a new user_timestamped_video example to the LiveKit C++ example collection, demonstrating end-to-end propagation of VideoFrameMetadata::user_timestamp_us from a synthetic video producer to a consumer that logs received metadata.

Changes:

  • Introduces UserTimestampedVideoProducer to publish synthetic frames with optional user timestamps.
  • Introduces UserTimestampedVideoConsumer to receive camera frames via a rich callback (with metadata) or a legacy callback (without metadata).
  • Wires the new example into the build with CMake and adds usage documentation.

Reviewed changes

Copilot reviewed 7 out of 7 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
user_timestamped_video/producer/main.cpp New producer executable that publishes synthetic BGRA frames and optionally sets metadata.user_timestamp_us.
user_timestamped_video/producer/CMakeLists.txt Builds and links the producer example against the LiveKit core target.
user_timestamped_video/consumer/main.cpp New consumer executable that subscribes to camera frames and logs metadata when enabled.
user_timestamped_video/consumer/CMakeLists.txt Builds and links the consumer example against the LiveKit core target.
user_timestamped_video/README.md Documents how to run producer/consumer and the expected timestamp behavior.
user_timestamped_video/CMakeLists.txt Adds producer/consumer subdirectories for the example.
CMakeLists.txt Adds user_timestamped_video to the top-level build.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread user_timestamped_video/consumer/main.cpp
Comment thread user_timestamped_video/producer/main.cpp
Comment thread user_timestamped_video/consumer/main.cpp
@stephen-derosa stephen-derosa force-pushed the sderosa/user_timestamp_video branch from 86f0485 to e7d3ec3 Compare April 22, 2026 20:03
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 7 out of 7 changed files in this pull request and generated 2 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +84 to +88
<< " " << program
<< " <ws-url> <token> [--without-user-timestamp]\n"
<< "or:\n"
<< " LIVEKIT_URL=... LIVEKIT_TOKEN=... " << program
<< " [--without-user-timestamp]\n";
Copy link

Copilot AI Apr 28, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

parseArgs() also accepts --with-user-timestamp, but the usage text only documents --without-user-timestamp. Update the usage (and/or README) to mention both flags so users can discover how to re-enable the default explicitly when scripting.

Copilot uses AI. Check for mistakes.
Comment on lines +69 to +73
<< " " << program
<< " <ws-url> <token> [--ignore-user-timestamp]\n"
<< "or:\n"
<< " LIVEKIT_URL=... LIVEKIT_TOKEN=... " << program
<< " [--ignore-user-timestamp]\n";
Copy link

Copilot AI Apr 28, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

parseArgs() also accepts --read-user-timestamp, but the usage text only documents --ignore-user-timestamp. Consider documenting both flags (or removing the undocumented one) to avoid hidden CLI behavior.

Copilot uses AI. Check for mistakes.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants